1. Field of the Invention
The present invention generally relates to software upgrades. More particularly, the present invention relates to automation of software upgrades utilizing computer implemented methods for verifying currently installed software on a system and ordering a customized software upgrade.
2. Description of the Related Art
Generally, software upgrades are periodically released to improve previous versions/releases of the same software, and correspondingly, customers periodically update their software versions/releases to the software upgrades. Traditionally, upgrading to the current software version/release is a time-consuming manual process that involves both the customer and the software sales representative in various tasks. In a typical software upgrade process, after being notified of a software upgrade release, the customer contacts the software sales representative to request the software upgrade. The sales representative must verify that the customer is entitled to the new version/release (e.g. they have the right business contracts and they have Proof of Entitlement (POE) for the software). Then, the software sales representative must determine the software inventory currently installed on the customer system and whether that software has changed configuration in the new version/release. The software sale representative also needs to validate the customer software inventory against administrative database records, updating administrative records as required to synchronize records. The sale representative then prepares and submits a software configuration order to the customer for order approval. The software configuration order is then forwarded through the administration system to a fulfillment and distribution center, where the software order is prepared and shipped to the customer. The process for a customer to obtain a software upgrade usually takes many days (sometimes more than a week) because of the required manual tasks performed by both the customer and the sales representative.
In addition to the time consumed by this laborious process, the traditional software upgrade process is also error-prone due to the many manual steps and the complexities involved with software configuration (e.g., pre-requisites and co-requisites). Because the demands of world wide e-business solutions which require constant availability, customers cannot afford to be “out of service” for any period of time.
Therefore, a need exists for a more expedient way for customers to obtain software upgrades, particularly, minimizing the required manual tasks performed by the customer and the sales representative while maximizing accuracy of the software upgrade order.